<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2">
<meta name="theme-color" content="#222">
<meta name="generator" content="Hexo 4.2.1">
  <link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon-next.png">
  <link rel="icon" type="image/png" sizes="32x32" href="/images/favicon-32x32-next.png">
  <link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16-next.png">
  <link rel="mask-icon" href="/images/logo.svg" color="#222">
  <meta name="google-site-verification" content="yF8HXsFuCTrePDFRnSkN2kkzV2ypBjtywzXsfVXOOV8">
  <meta name="baidu-site-verification" content="VxrVAiQAZ9">

<link rel="stylesheet" href="/css/main.css">


<link rel="stylesheet" href="/lib/font-awesome/css/all.min.css">

<script id="hexo-configurations">
    var NexT = window.NexT || {};
    var CONFIG = {"hostname":"yang0033.gitee.io","root":"/","scheme":"Gemini","version":"7.8.0","exturl":false,"sidebar":{"position":"left","display":"post","padding":18,"offset":12,"onmobile":false},"copycode":{"enable":true,"show_result":true,"style":null},"back2top":{"enable":true,"sidebar":false,"scrollpercent":false},"bookmark":{"enable":false,"color":"#222","save":"auto"},"fancybox":false,"mediumzoom":false,"lazyload":false,"pangu":false,"comments":{"style":"tabs","active":null,"storage":true,"lazyload":false,"nav":null},"algolia":{"hits":{"per_page":10},"labels":{"input_placeholder":"Search for Posts","hits_empty":"We didn't find any results for the search: ${query}","hits_stats":"${hits} results found in ${time} ms"}},"localsearch":{"enable":true,"trigger":"auto","top_n_per_article":1,"unescape":true,"preload":true},"motion":{"enable":true,"async":false,"transition":{"post_block":"fadeIn","post_header":"slideDownIn","post_body":"slideDownIn","coll_header":"slideLeftIn","sidebar":"slideUpIn"}},"path":"search.xml"};
  </script>

  <meta name="description" content="框架及blog整理 目录  项目 控件及框架 blog 设计   项目   项目名 项目描述 备注 配图    精仿知乎日报iOS端 如题 swift    MVVM项目示例 附blog讲解 OC    雷纯峰的MVVM+RAC项目 如题 RAC">
<meta property="og:type" content="article">
<meta property="og:title" content="框架及blog整理">
<meta property="og:url" content="http://yang0033.gitee.io/2015/10/05/%E6%A1%86%E6%9E%B6%E5%8F%8Ablog%E6%95%B4%E7%90%86/index.html">
<meta property="og:site_name" content="SuperYang&#96;s Blog">
<meta property="og:description" content="框架及blog整理 目录  项目 控件及框架 blog 设计   项目   项目名 项目描述 备注 配图    精仿知乎日报iOS端 如题 swift    MVVM项目示例 附blog讲解 OC    雷纯峰的MVVM+RAC项目 如题 RAC">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="http://7xju1s.com1.z0.glb.clouddn.com/image/4/dd/c0dca6c31fd90e93aef3f343a8cac.gif">
<meta property="og:image" content="http://images.cnitblog.com/blog/545446/201501/081739565313089.png">
<meta property="og:image" content="https://github.com/ArtSabintsev/Harpy/blob/master/samplePictures/picSkippedUpdate.png?raw=true">
<meta property="og:image" content="https://github.com/TBXark/TKRubberIndicator/blob/master/TKRubberIndicator/rubberindicator.gif">
<meta property="og:image" content="http://7xju1s.com1.z0.glb.clouddn.com/image/0/2d/673d83a52e2fddda239cce052d115.gif">
<meta property="og:image" content="http://7xju1s.com1.z0.glb.clouddn.com/image/5/87/116f3166d6d88ac429207a0562f47.gif">
<meta property="og:image" content="https://cloud.githubusercontent.com/assets/889949/10723260/5225c86c-7bb9-11e5-883c-9b42aa50ea27.png">
<meta property="og:image" content="https://github.com/12207480/TYAlertController/blob/master/screenshot/TYAlertControllerDemo.gif">
<meta property="og:image" content="https://camo.githubusercontent.com/170b43643d7208c9f7a4ad584bfda8b8f97057d8/687474703a2f2f37786b7674352e636f6d312e7a302e676c622e636c6f7564646e2e636f6d2f6769746875622f5946537461727456696577627574746f6d2e676966">
<meta property="og:image" content="https://camo.githubusercontent.com/fae485dda0dd0e050d862b04aee92f56c868a778/687474703a2f2f696d672e68622e616963646e2e636f6d2f633133643638323764666465343262613765643762613161363463353863306139313165666432663132366361332d7079733665545f6677363538">
<meta property="og:image" content="https://raw.githubusercontent.com/12207480/TYAttributedLabel/master/screenshot/TYAtrributedLabelDemo.gif">
<meta property="og:image" content="https://github.com/suzuki-0000/SKPhotoBrowser/blob/master/Screenshots/example01.gif">
<meta property="og:image" content="https://camo.githubusercontent.com/3a6e8dc2f5edcffbf7f3bd1e243bebce90967c78/68747470733a2f2f7261772e6769746875622e636f6d2f69626972656d652f59594b69742f6d61737465722f44656d6f536e617073686f742f6e69636f6e69636f6e692e676966">
<meta property="og:image" content="http://ww3.sinaimg.cn/bmiddle/0066ssYfgw1exp2amb2f0j30qi124dmx.jpg">
<meta property="og:image" content="http://7xju1s.com1.z0.glb.clouddn.com/image/a/28/f79f1c8b53e722300461af77630dd.gif">
<meta property="article:published_time" content="2015-10-05T13:22:34.000Z">
<meta property="article:modified_time" content="2020-07-09T07:55:17.063Z">
<meta property="article:author" content="SuperYang">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="http://7xju1s.com1.z0.glb.clouddn.com/image/4/dd/c0dca6c31fd90e93aef3f343a8cac.gif">

<link rel="canonical" href="http://yang0033.gitee.io/2015/10/05/%E6%A1%86%E6%9E%B6%E5%8F%8Ablog%E6%95%B4%E7%90%86/">


<script id="page-configurations">
  // https://hexo.io/docs/variables.html
  CONFIG.page = {
    sidebar: "",
    isHome : false,
    isPost : true,
    lang   : 'zh-CN'
  };
</script>

  <title>框架及blog整理 | SuperYang`s Blog</title>
  
    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-71812998-3"></script>
    <script>
      if (CONFIG.hostname === location.hostname) {
        window.dataLayer = window.dataLayer || [];
        function gtag(){dataLayer.push(arguments);}
        gtag('js', new Date());
        gtag('config', 'UA-71812998-3');
      }
    </script>


  <script>
    var _hmt = _hmt || [];
    (function() {
      var hm = document.createElement("script");
      hm.src = "https://hm.baidu.com/hm.js?8ff3295288514de6f89f314c23ee40ab";
      var s = document.getElementsByTagName("script")[0];
      s.parentNode.insertBefore(hm, s);
    })();
  </script>




  <noscript>
  <style>
  .use-motion .brand,
  .use-motion .menu-item,
  .sidebar-inner,
  .use-motion .post-block,
  .use-motion .pagination,
  .use-motion .comments,
  .use-motion .post-header,
  .use-motion .post-body,
  .use-motion .collection-header { opacity: initial; }

  .use-motion .site-title,
  .use-motion .site-subtitle {
    opacity: initial;
    top: initial;
  }

  .use-motion .logo-line-before i { left: initial; }
  .use-motion .logo-line-after i { right: initial; }
  </style>
</noscript>

</head>

<body itemscope itemtype="http://schema.org/WebPage">
  <div class="container use-motion">
    <div class="headband"></div>

    <header class="header" itemscope itemtype="http://schema.org/WPHeader">
      <div class="header-inner"><div class="site-brand-container">
  <div class="site-nav-toggle">
    <div class="toggle" aria-label="切换导航栏">
      <span class="toggle-line toggle-line-first"></span>
      <span class="toggle-line toggle-line-middle"></span>
      <span class="toggle-line toggle-line-last"></span>
    </div>
  </div>

  <div class="site-meta">

    <a href="/" class="brand" rel="start">
      <span class="logo-line-before"><i></i></span>
      <h1 class="site-title">SuperYang`s Blog</h1>
      <span class="logo-line-after"><i></i></span>
    </a>
      <p class="site-subtitle" itemprop="description">落魄程序员在线炒饭</p>
  </div>

  <div class="site-nav-right">
    <div class="toggle popup-trigger">
        <i class="fa fa-search fa-fw fa-lg"></i>
    </div>
  </div>
</div>




<nav class="site-nav">
  <ul id="menu" class="main-menu menu">
        <li class="menu-item menu-item-home">

    <a href="/" rel="section"><i class="fa fa-home fa-fw"></i>首页</a>

  </li>
        <li class="menu-item menu-item-about">

    <a href="/about/" rel="section"><i class="fa fa-user fa-fw"></i>关于</a>

  </li>
        <li class="menu-item menu-item-tags">

    <a href="/tags/" rel="section"><i class="fa fa-tags fa-fw"></i>标签</a>

  </li>
        <li class="menu-item menu-item-categories">

    <a href="/categories/" rel="section"><i class="fa fa-th fa-fw"></i>分类</a>

  </li>
        <li class="menu-item menu-item-archives">

    <a href="/archives/" rel="section"><i class="fa fa-archive fa-fw"></i>归档</a>

  </li>
        <li class="menu-item menu-item-message">

    <a href="/message/" rel="section"><i class="fa fa-music fa-fw"></i>留言板 | Music</a>

  </li>
      <li class="menu-item menu-item-search">
        <a role="button" class="popup-trigger"><i class="fa fa-search fa-fw"></i>搜索
        </a>
      </li>
  </ul>
</nav>



  <div class="search-pop-overlay">
    <div class="popup search-popup">
        <div class="search-header">
  <span class="search-icon">
    <i class="fa fa-search"></i>
  </span>
  <div class="search-input-container">
    <input autocomplete="off" autocapitalize="off"
           placeholder="搜索..." spellcheck="false"
           type="search" class="search-input">
  </div>
  <span class="popup-btn-close">
    <i class="fa fa-times-circle"></i>
  </span>
</div>
<div id="search-result">
  <div id="no-result">
    <i class="fa fa-spinner fa-pulse fa-5x fa-fw"></i>
  </div>
</div>

    </div>
  </div>

</div>
    </header>

    
  <div class="back-to-top">
    <i class="fa fa-arrow-up"></i>
    <span>0%</span>
  </div>


    <main class="main">
      <div class="main-inner">
        <div class="content-wrap">
          

          <div class="content post posts-expand">
            

    
  
  
  <article itemscope itemtype="http://schema.org/Article" class="post-block" lang="zh-CN">
    <link itemprop="mainEntityOfPage" href="http://yang0033.gitee.io/2015/10/05/%E6%A1%86%E6%9E%B6%E5%8F%8Ablog%E6%95%B4%E7%90%86/">

    <span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
      <meta itemprop="image" content="https://tva2.sinaimg.cn/crop.259.17.290.290.180/c2abdfa9jw8ez7appr3p2j20g40a2t91.jpg?KID=imgbed,tva&Expires=1594186820&ssig=BdxhDdi1Ti">
      <meta itemprop="name" content="SuperYang">
      <meta itemprop="description" content="牛肉炒饭不要香菜，老板收钱">
    </span>

    <span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
      <meta itemprop="name" content="SuperYang`s Blog">
    </span>
      <header class="post-header">
        <h1 class="post-title" itemprop="name headline">
          框架及blog整理
        </h1>

        <div class="post-meta">
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="far fa-calendar"></i>
              </span>
              <span class="post-meta-item-text">发表于</span>

              <time title="创建时间：2015-10-05 21:22:34" itemprop="dateCreated datePublished" datetime="2015-10-05T21:22:34+08:00">2015-10-05</time>
            </span>
              <span class="post-meta-item">
                <span class="post-meta-item-icon">
                  <i class="far fa-calendar-check"></i>
                </span>
                <span class="post-meta-item-text">更新于</span>
                <time title="修改时间：2020-07-09 15:55:17" itemprop="dateModified" datetime="2020-07-09T15:55:17+08:00">2020-07-09</time>
              </span>

          
            <span id="/2015/10/05/%E6%A1%86%E6%9E%B6%E5%8F%8Ablog%E6%95%B4%E7%90%86/" class="post-meta-item leancloud_visitors" data-flag-title="框架及blog整理" title="阅读次数">
              <span class="post-meta-item-icon">
                <i class="fa fa-eye"></i>
              </span>
              <span class="post-meta-item-text">阅读次数：</span>
              <span class="leancloud-visitors-count"></span>
            </span>
  
  <span class="post-meta-item">
    
      <span class="post-meta-item-icon">
        <i class="far fa-comment"></i>
      </span>
      <span class="post-meta-item-text">Valine：</span>
    
    <a title="valine" href="/2015/10/05/%E6%A1%86%E6%9E%B6%E5%8F%8Ablog%E6%95%B4%E7%90%86/#valine-comments" itemprop="discussionUrl">
      <span class="post-comments-count valine-comment-count" data-xid="/2015/10/05/%E6%A1%86%E6%9E%B6%E5%8F%8Ablog%E6%95%B4%E7%90%86/" itemprop="commentCount"></span>
    </a>
  </span>
  
  <br>
            <span class="post-meta-item" title="本文字数">
              <span class="post-meta-item-icon">
                <i class="far fa-file-word"></i>
              </span>
                <span class="post-meta-item-text">本文字数：</span>
              <span>2.3k</span>
            </span>
            <span class="post-meta-item" title="阅读时长">
              <span class="post-meta-item-icon">
                <i class="far fa-clock"></i>
              </span>
                <span class="post-meta-item-text">阅读时长 &asymp;</span>
              <span>2 分钟</span>
            </span>

        </div>
      </header>

    
    
    
    <div class="post-body" itemprop="articleBody">

      
        <h1 id="框架及blog整理"><a href="#框架及blog整理" class="headerlink" title="框架及blog整理"></a>框架及blog整理</h1><hr>
<p><strong>目录</strong></p>
<ul>
<li><a href="#项目">项目</a></li>
<li><a href="#控件及框架">控件及框架</a></li>
<li><a href="#blog">blog</a></li>
<li><a href="#设计">设计</a></li>
</ul>
<hr>
<h2 id="项目"><a href="#项目" class="headerlink" title="项目"></a>项目</h2><table>
<thead>
<tr>
<th>项目名</th>
<th align="center">项目描述</th>
<th align="center">备注</th>
<th align="center">配图</th>
</tr>
</thead>
<tbody><tr>
<td><a href="https://github.com/zpz1237/NirZhihuDaily2.0" target="_blank" rel="noopener">精仿知乎日报iOS端</a></td>
<td align="center">如题</td>
<td align="center">swift</td>
<td align="center"><img src="http://7xju1s.com1.z0.glb.clouddn.com/image/4/dd/c0dca6c31fd90e93aef3f343a8cac.gif" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/lizelu/MVVM" target="_blank" rel="noopener">MVVM项目示例</a></td>
<td align="center">附blog讲解</td>
<td align="center">OC</td>
<td align="center"><img src="http://images.cnitblog.com/blog/545446/201501/081739565313089.png" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/leichunfeng/MVVMReactiveCocoa" target="_blank" rel="noopener">雷纯峰的MVVM+RAC项目</a></td>
<td align="center">如题</td>
<td align="center"><code>RAC</code></td>
<td align="center"></td>
</tr>
</tbody></table>
<hr>
<a id="more"></a> 

<h2 id="控件及框架"><a href="#控件及框架" class="headerlink" title="控件及框架"></a>控件及框架</h2><blockquote>
<p><code>开发框架</code> <code>提醒弹出框</code> <code>下拉列表</code> <code>按钮</code> <code>标签</code> <code>指示器</code> <code>调试工具</code> <code>导航</code> <code>下拉刷新</code> <code>电话号校验工具</code> <code>webviwe</code> <code>图文混排</code> <code>自动布局</code> <code>服务器回传异常</code> <code>版本更新检测</code> <code>RAC</code></p>
</blockquote>
<table>
<thead>
<tr>
<th>项目名</th>
<th align="center">项目描述</th>
<th align="center">备注</th>
<th align="center">配图</th>
</tr>
</thead>
<tbody><tr>
<td><a href="https://github.com/ArtSabintsev/Harpy" target="_blank" rel="noopener">Harpy</a></td>
<td align="center">一个版本更新检测控件</td>
<td align="center"><code>版本更新检测</code> <code>提醒弹出框</code></td>
<td align="center"><img src="https://github.com/ArtSabintsev/Harpy/blob/master/samplePictures/picSkippedUpdate.png?raw=true" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/TBXark/TKRubberIndicator" target="_blank" rel="noopener">TKRubberIndicator</a></td>
<td align="center">一个定制的 page Control</td>
<td align="center"><code>swift</code> <code>指示器</code></td>
<td align="center"><img src="https://github.com/TBXark/TKRubberIndicator/blob/master/TKRubberIndicator/rubberindicator.gif" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="http://t.cn/RyNeCSi" target="_blank" rel="noopener">ViewMonitor</a></td>
<td align="center">精准测量view布局</td>
<td align="center"><code>调试工具</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/adad184/MMPlaceHolder" target="_blank" rel="noopener">MMPlaceHolder</a></td>
<td align="center">精准测量view布局</td>
<td align="center"><code>调试工具</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/ChenYilong/CYLTabBarController" target="_blank" rel="noopener">CYLTabBarController</a></td>
<td align="center">tab导航封装</td>
<td align="center"><code>导航</code></td>
<td align="center"><img src="http://7xju1s.com1.z0.glb.clouddn.com/image/0/2d/673d83a52e2fddda239cce052d115.gif" width = "90" height = "160" alt="图片名称" align=center/></td>
</tr>
<tr>
<td><a href="https://github.com/DeveloperLx/LxDBAnything" target="_blank" rel="noopener">LxDBAnything</a></td>
<td align="center">logAnything</td>
<td align="center"><code>调试工具</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/gontovnik/DGElasticPullToRefresh" target="_blank" rel="noopener">DGElasticPullToRefresh</a></td>
<td align="center">果冻效果下拉刷新</td>
<td align="center"><code>下拉刷新</code></td>
<td align="center"><img src="http://7xju1s.com1.z0.glb.clouddn.com/image/5/87/116f3166d6d88ac429207a0562f47.gif" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/marmelroy/PhoneNumberKit" target="_blank" rel="noopener">PhoneNumberKit</a></td>
<td align="center">国际电话校验</td>
<td align="center"><code>电话号校验工具</code> <code>swift</code></td>
<td align="center"><img src="https://cloud.githubusercontent.com/assets/889949/10723260/5225c86c-7bb9-11e5-883c-9b42aa50ea27.png" width = "90" height = "60" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/12207480/TYAlertController" target="_blank" rel="noopener">TYAlertController</a></td>
<td align="center">定制弹出框</td>
<td align="center"><code>提醒弹出框</code></td>
<td align="center"><img src="https://github.com/12207480/TYAlertController/blob/master/screenshot/TYAlertControllerDemo.gif" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/yeziahehe/YFStartView" target="_blank" rel="noopener">YFStartView</a></td>
<td align="center">启动动画控件</td>
<td align="center"><code>启动动画</code></td>
<td align="center"><img src="https://camo.githubusercontent.com/170b43643d7208c9f7a4ad584bfda8b8f97057d8/687474703a2f2f37786b7674352e636f6d312e7a302e676c622e636c6f7564646e2e636f6d2f6769746875622f5946537461727456696577627574746f6d2e676966" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/Roxasora/RxWebViewController" target="_blank" rel="noopener">RxWebViewController</a></td>
<td align="center">仿微信webview</td>
<td align="center"><code>webviwe</code></td>
<td align="center"><img src="https://camo.githubusercontent.com/fae485dda0dd0e050d862b04aee92f56c868a778/687474703a2f2f696d672e68622e616963646e2e636f6d2f633133643638323764666465343262613765643762613161363463353863306139313165666432663132366361332d7079733665545f6677363538" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/12207480/TYAttributedLabel" target="_blank" rel="noopener">TYAttributedLabel</a></td>
<td align="center">强大的属性文本控件，图文混排利器</td>
<td align="center"><code>图文混排</code></td>
<td align="center"><img src="https://raw.githubusercontent.com/12207480/TYAttributedLabel/master/screenshot/TYAtrributedLabelDemo.gif" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/suzuki-0000/SKPhotoBrowser?url_type=39&object_type=webpage&pos=1" target="_blank" rel="noopener">SKPhotoBrowser</a></td>
<td align="center"><a href="https://github.com/ideaismobile/IDMPhotoBrowser" target="_blank" rel="noopener">oc版本1</a> <a href="https://github.com/mwaterfall/MWPhotoBrowser" target="_blank" rel="noopener">OC版本2</a></td>
<td align="center"><code>图片浏览器</code></td>
<td align="center"><img src="https://github.com/suzuki-0000/SKPhotoBrowser/blob/master/Screenshots/example01.gif" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/steipete/PSTAlertController" target="_blank" rel="noopener">PSTAlertController</a></td>
<td align="center">UIAlertViewController及向前兼容版本</td>
<td align="center"><code>提醒弹出框</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/ibireme/YYKit" target="_blank" rel="noopener">YYKit</a></td>
<td align="center">YYKit 是一组功能丰富的 iOS 组件，用于构建大型、复杂的 iOS 应用。</td>
<td align="center"><code>开发框架</code></td>
<td align="center"><img src="https://camo.githubusercontent.com/3a6e8dc2f5edcffbf7f3bd1e243bebce90967c78/68747470733a2f2f7261772e6769746875622e636f6d2f69626972656d652f59594b69742f6d61737465722f44656d6f536e617073686f742f6e69636f6e69636f6e692e676966" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/Nododo/NSNull-JSON" target="_blank" rel="noopener">NSNull-JSON</a></td>
<td align="center">解决服务器回传数据为空</td>
<td align="center"><code>服务器回传异常</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/lianchengjiang/PrintValue/tree/master" target="_blank" rel="noopener">打印任何东东</a></td>
<td align="center">调试lldb进阶版</td>
<td align="center"><code>调试工具</code></td>
<td align="center"><img src="http://ww3.sinaimg.cn/bmiddle/0066ssYfgw1exp2amb2f0j30qi124dmx.jpg" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
<tr>
<td><a href="https://github.com/facebook/componentkit" target="_blank" rel="noopener">componentkit</a></td>
<td align="center">布局框架（非autolayout）</td>
<td align="center"><code>自动布局</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/facebook/FBSimulatorControl" target="_blank" rel="noopener">facebook/FBSimulatorControl</a></td>
<td align="center">mac开启多模拟器</td>
<td align="center"><code>调试工具</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/facebook/AsyncDisplayKit" target="_blank" rel="noopener">facebook/AsyncDisplayKit</a></td>
<td align="center">异步显示工具</td>
<td align="center"><code>性能优化</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/facebook/WebDriverAgent" target="_blank" rel="noopener">facebook/WebDriverAgent</a></td>
<td align="center">iOS用于web测试的框架</td>
<td align="center"><code>调试工具</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/facebook/KVOController" target="_blank" rel="noopener">KVOController</a></td>
<td align="center">安全KVO框架<a href="https://github.com/facebook/KVOController" target="_blank" rel="noopener">(详情)</a></td>
<td align="center"><code>性能优化</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/CodaFi/AFNetworking-RACExtensions" target="_blank" rel="noopener">AFNetworking的RAC扩展</a></td>
<td align="center">如题</td>
<td align="center"><code>RAC</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/octokit/octokit.objc" target="_blank" rel="noopener">基于AFN+RAC+Mantle的网络请求框架</a></td>
<td align="center">如题</td>
<td align="center"><code>RAC</code></td>
<td align="center"></td>
</tr>
<tr>
<td><a href="https://github.com/leichunfeng/MVVMReactiveCocoa" target="_blank" rel="noopener">雷纯峰的MVVM+RAC项目</a></td>
<td align="center">如题</td>
<td align="center"><code>RAC</code></td>
<td align="center"></td>
</tr>
</tbody></table>
<hr>
<h2 id="blog"><a href="#blog" class="headerlink" title="blog"></a>blog</h2><blockquote>
<p><code>待阅</code> <code>架构设计</code> <code>编程规范</code> <code>版本控制</code> <code>调试工具</code> <code>iOS9新特性</code> <code>CocoaPods</code> <code>常用框架</code> <code>编程语言</code> <code>runtime</code> <code>UICollectionView</code> <code>绘图</code> <code>动画</code> <code>自动布局</code> <code>设计模式</code> <code>服务器回传异常</code> <code>调试技巧</code> <code>IB技巧</code> <code>性能优化</code> <code>开发技巧</code> <code>屏幕旋转</code> <code>框架开发技巧</code></p>
</blockquote>
<table>
<thead>
<tr>
<th>项目名</th>
<th align="center">项目描述</th>
<th align="center">备注</th>
</tr>
</thead>
<tbody><tr>
<td><a href="http://www.cnblogs.com/jhzhu/p/3480885.html" target="_blank" rel="noopener">iOS屏幕旋转控制流程</a></td>
<td align="center">屏幕旋转</td>
<td align="center"><code>屏幕旋转</code></td>
</tr>
<tr>
<td><a href="http://tech.meituan.com/DiveIntoMethodCache.html" target="_blank" rel="noopener">深入理解Objective-C：方法缓存(美团)</a></td>
<td align="center">方法缓存</td>
<td align="center"><code>框架开发技巧</code></td>
</tr>
<tr>
<td><a href="http://tech.meituan.com/DiveIntoCategory.html" target="_blank" rel="noopener">深入理解Objective-C：Category(美团)</a></td>
<td align="center">Category</td>
<td align="center"><code>框架开发技巧</code></td>
</tr>
<tr>
<td><a href="https://github.com/yangchao0033/objc-zen-book-cn" target="_blank" rel="noopener">禅与 Objective-C 编程艺术</a></td>
<td align="center">oc代码规范必读</td>
<td align="center"><code>编程规范</code></td>
</tr>
<tr>
<td><a href="https://github.com/yangchao0033/iOSInterviewQuestions" target="_blank" rel="noopener">iOSInterviewQuestions</a></td>
<td align="center">iOSInterviewQuestions</td>
<td align="center"><code>Interview</code></td>
</tr>
<tr>
<td><a href="http://www.jianshu.com/p/87e34894a9f9?utm_campaign=maleskine&utm_content=note&utm_medium=writer_share&utm_source=weibo" target="_blank" rel="noopener">git流程控制</a></td>
<td align="center">git使用技巧</td>
<td align="center"><code>版本控制</code></td>
</tr>
<tr>
<td><a href="http://swiftcafe.io/2015/09/05/lldb-debug/" target="_blank" rel="noopener">iOS 开发者旅途中的指南针 - LLDB 调试技术</a></td>
<td align="center">lldb调试</td>
<td align="center"><code>调试工具</code></td>
</tr>
<tr>
<td><a href="http://www.jianshu.com/p/e870fdd971fc?utm_campaign=hugo&utm_medium=reader_share&utm_content=note" target="_blank" rel="noopener">git命令结构图</a></td>
<td align="center">git使用技巧</td>
<td align="center"><code>版本控制</code></td>
</tr>
<tr>
<td><a href="http://casatwy.com/iosying-yong-jia-gou-tan-wang-luo-ceng-she-ji-fang-an.html" target="_blank" rel="noopener">iOS应用架构谈(安居客)</a></td>
<td align="center">全套架构师必备</td>
<td align="center"><code>架构设计</code></td>
</tr>
<tr>
<td><a href="http://www.jianshu.com/p/16963d233f01" target="_blank" rel="noopener">UIStackView简介</a></td>
<td align="center">新控件</td>
<td align="center"><code>iOS9新特性</code></td>
</tr>
<tr>
<td><a href="https://github.com/Damonvvong/DWCategory" target="_blank" rel="noopener">DWCategory</a></td>
<td align="center">借助GitHub托管Category,利用CocoaPods集成到项目中</td>
<td align="center"><code>CocoaPods</code></td>
</tr>
<tr>
<td><a href="http://www.jianshu.com/p/6598fdef5afc?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weibo" target="_blank" rel="noopener">Facebook Paper 第三方库</a></td>
<td align="center">如题</td>
<td align="center"><code>常用框架</code></td>
</tr>
<tr>
<td><a href="http://gold.xitu.io/entry/5629a54900b0814d834987f7" target="_blank" rel="noopener">javascript学习资料集</a></td>
<td align="center">如题</td>
<td align="center"><code>编程语言</code></td>
</tr>
<tr>
<td><a href="http://www.uraimo.com/2015/10/23/effective-method-swizzling-with-swift/" target="_blank" rel="noopener">Effective Method Swizzling in Swift</a></td>
<td align="center">swift方法交换</td>
<td align="center"><code>runtime</code></td>
</tr>
<tr>
<td>collectionView教程</td>
<td align="center"><a href="http://www.jianshu.com/p/22adf62ea491?url_type=39&object_type=webpage&pos=1" target="_blank" rel="noopener">①UICollectionView自定义布局教程:Pinterest</a> <a href="http://www.olinone.com/?p=280&url_type=39&object_type=webpage&pos=1" target="_blank" rel="noopener">②UICollectionView高级进阶篇</a> <a href="http://ios.jobbole.com/69259/?url_type=39&object_type=webpage&pos=1" target="_blank" rel="noopener">③Collection View 动画</a> <a href="http://ios.jobbole.com/82403/?url_type=39&object_type=webpage&pos=1" target="_blank" rel="noopener">④UICollectionViews有了简单的重排功能</a></td>
<td align="center"><code>UICollectionView</code></td>
</tr>
<tr>
<td><a href="http://tutuge.me/2015/10/25/ttgemojirate-lib/" target="_blank" rel="noopener">Swift开源项目: TTGEmojiRate的实现</a></td>
<td align="center">如题</td>
<td align="center"><code>绘图</code> <code>动画</code></td>
</tr>
<tr>
<td><a href="http://www.jianshu.com/p/d060bef3d620?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weixin-timeline&from=timeline&isappinstalled=0" target="_blank" rel="noopener">深入剖析Auto Layout，分析iOS各版本新增特性</a></td>
<td align="center">Auto Layout首选参考博客</td>
<td align="center"><code>自动布局</code></td>
</tr>
<tr>
<td><a href="http://www.infoq.com/cn/articles/rethinking-mvc-mvvm" target="_blank" rel="noopener">被误解的MVC和被神化的MVVM</a></td>
<td align="center">如题</td>
<td align="center"><code>设计模式</code></td>
</tr>
<tr>
<td><a href="http://www.jianshu.com/p/b2371dd4443b?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io" target="_blank" rel="noopener">LLdb篇2教你使用faceBook的chisel来提高调试效率</a></td>
<td align="center">比lldb还吊<a href="http://ww4.sinaimg.cn/bmiddle/005Fj2RDjw1extbygx7c2j30c846k7t3.jpg" target="_blank" rel="noopener">配图</a></td>
<td align="center"><code>调试技巧</code></td>
</tr>
<tr>
<td><a href="http://ios.jobbole.com/82840/" target="_blank" rel="noopener">4个你需要知道的 Asset Catalog 的秘密</a></td>
<td align="center">使用的切图</td>
<td align="center"><code>IB技巧</code></td>
</tr>
<tr>
<td><a href="http://vonglo.me/2015/08/31/%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E7%BF%BB%E4%B9%A6%E5%8A%A8%E7%94%BB(Part1)/" target="_blank" rel="noopener">如何创建一个翻书动画</a></td>
<td align="center">翻译动画</td>
<td align="center"><code>动画</code></td>
</tr>
<tr>
<td><a href="http://blog.ibireme.com/2015/11/12/smooth_user_interfaces_for_ios/" target="_blank" rel="noopener">iOS 保持界面流畅的技巧</a></td>
<td align="center">性能优化</td>
<td align="center"><code>调试技巧</code></td>
</tr>
<tr>
<td><a href="http://mp.weixin.qq.com/s?__biz=MjM5NTIyNTUyMQ==&mid=425829999&idx=1&sn=f7e06bf52bddf9d8c332ea4f21d02ddb&scene=1&srcid=1202AhVbI38xlYbkxPdyGSkW&key=ac89cba618d2d976fe3d2a1f7c56b9dd321b1d05dd7c90b326d5d82ac96c8ce937363d06e9fc9f6614c8a47453c7df61&ascene=0&uin=NTk4Mzc4MzM1&devicetype=iMac+MacBookPro12%2C1+OSX+OSX+10.10.5+build(14F27)&version=11020012&pass_ticket=ui6hS0hhEVRFhYFtnu5MXzFKIeYuw9OGlpwX2mFdMPe2oBPBcFatLT8a0xFgqXUF" target="_blank" rel="noopener">递归的故事（下）</a></td>
<td align="center">算法解析</td>
<td align="center"><code>性能优化</code></td>
</tr>
<tr>
<td><a href="http://www.jianshu.com/p/5bb91ccc07e3?utm_campaign=maleskine&utm_content=note&utm_medium=writer_share&utm_source=weibo&luicode=10000359" target="_blank" rel="noopener">轻松学习之四－－最简化原生效果集成UITableViewCell左滑多个按钮</a></td>
<td align="center">开发技巧</td>
<td align="center"><code>开发技巧</code></td>
</tr>
<tr>
<td><a href="http://ios.jobbole.com/83058/?luicode=10000359" target="_blank" rel="noopener">10个加速Table Views开发的建议</a></td>
<td align="center">性能优化</td>
<td align="center"><code>性能优化</code></td>
</tr>
<tr>
<td><a href="http://blog.cnbang.net/tech/2808/" target="_blank" rel="noopener">JSPatch实现原理详解</a></td>
<td align="center">javascript-OC交互 <a href="https://github.com/bang590/JSPatch" target="_blank" rel="noopener">Github</a></td>
<td align="center"><code>javascript/objective-c交互</code></td>
</tr>
<tr>
<td>一个国外的好用的框架集</td>
<td align="center"><a href="https://www.cocoacontrols.com/controls?language=3-javascript-react-native&platform_id=ios" target="_blank" rel="noopener">链接1</a>,<a href="https://github.com/jobbole/awesome-ios-cn/blob/master/README.md#getting-started" target="_blank" rel="noopener">链接2</a></td>
<td align="center"><code>三方库</code></td>
</tr>
<tr>
<td><a href="http://ios.jobbole.com/83371/" target="_blank" rel="noopener">Autolayout 的第一次亲密接触</a></td>
<td align="center">Autolayout 原理及使用详解，偏原理</td>
<td align="center"><code>自动布局</code></td>
</tr>
<tr>
<td><a href="http://adad184.com/2014/09/28/use-masonry-to-quick-solve-autolayout/" target="_blank" rel="noopener">里脊串的 Autolayout</a></td>
<td align="center">比较基础的使用方法</td>
<td align="center"><code>自动布局</code></td>
</tr>
<tr>
<td><a href="http://tutuge.me/2015/05/23/autolayout-example-with-masonry/" target="_blank" rel="noopener">有趣的Autolayout示例-Masonry实现</a></td>
<td align="center">一些自动布局写的有趣的例子</td>
<td align="center"><code>自动布局</code></td>
</tr>
<tr>
<td><a href="http://www.raywenderlich.com/62699/reactivecocoa-tutorial-pt1" target="_blank" rel="noopener">RACSignal的基本用法</a></td>
<td align="center">老外写的</td>
<td align="center"><code>RAC</code></td>
</tr>
<tr>
<td><a href="http://tech.meituan.com/RACSignalSubscription.html" target="_blank" rel="noopener">RACSignal的Subscription深入分析</a></td>
<td align="center">美团的技术wiki</td>
<td align="center"><code>RAC</code></td>
</tr>
<tr>
<td><a href="http://www.cnblogs.com/ludashi/p/4925042.html" target="_blank" rel="noopener">iOS 开发之 ReactiveCocoa 下的 MVVM（干货分享）</a></td>
<td align="center">入门级RAC+MVVM</td>
<td align="center"><code>RAC</code> <code>MVVM</code></td>
</tr>
<tr>
<td><a href="http://www.cnblogs.com/smileEvday/p/UDID.html" target="_blank" rel="noopener">iOS获取设备唯一标识符</a></td>
<td align="center">亲测可用</td>
<td align="center"><code>设备唯一标志位</code></td>
</tr>
</tbody></table>
<hr>
<h2 id="设计"><a href="#设计" class="headerlink" title="设计"></a>设计</h2><table>
<thead>
<tr>
<th>项目名</th>
<th align="center">项目描述</th>
<th align="center">备注</th>
<th align="center">配图</th>
</tr>
</thead>
<tbody><tr>
<td><a href="http://mp.weixin.qq.com/s?__biz=MjM5NTMzNzg3NA==&mid=209948655&idx=1&sn=a46b8ff6bc90cac37c23095ee71cd595&3rd=MzA3MDU4NTYzMw==&scene=6#rd" target="_blank" rel="noopener">摆脱累赘的UI/UX</a></td>
<td align="center">优雅的设计师必看</td>
<td align="center">设计</td>
<td align="center"><img src="http://7xju1s.com1.z0.glb.clouddn.com/image/a/28/f79f1c8b53e722300461af77630dd.gif" width = "90" height = "160" alt="图片名称" align=center /></td>
</tr>
</tbody></table>

    </div>

    
    
    
        

  <div class="followme">
    <p>欢迎关注我的其它发布渠道</p>

    <div class="social-list">

        <div class="social-item">
          <a target="_blank" class="social-link" href="https://www.jianshu.com/u/f37a8f0ba6f8">
            <span class="icon">
              <i class="fas fa-book"></i>
            </span>

            <span class="label">简书</span>
          </a>
        </div>
    </div>
  </div>


      <footer class="post-footer">

        


        
    <div class="post-nav">
      <div class="post-nav-item"></div>
      <div class="post-nav-item">
    <a href="/2015/10/05/ReactiveCocoa%20%E8%AE%BE%E8%AE%A1%E8%A7%84%E8%8C%83/" rel="next" title="ReactiveCocoa 设计规范">
      ReactiveCocoa 设计规范 <i class="fa fa-chevron-right"></i>
    </a></div>
    </div>
      </footer>
    
  </article>
  
  
  



          </div>
          
    <div class="comments" id="valine-comments"></div>

<script>
  window.addEventListener('tabs:register', () => {
    let { activeClass } = CONFIG.comments;
    if (CONFIG.comments.storage) {
      activeClass = localStorage.getItem('comments_active') || activeClass;
    }
    if (activeClass) {
      let activeTab = document.querySelector(`a[href="#comment-${activeClass}"]`);
      if (activeTab) {
        activeTab.click();
      }
    }
  });
  if (CONFIG.comments.storage) {
    window.addEventListener('tabs:click', event => {
      if (!event.target.matches('.tabs-comment .tab-content .tab-pane')) return;
      let commentClass = event.target.classList[1];
      localStorage.setItem('comments_active', commentClass);
    });
  }
</script>

        </div>
          
  
  <div class="toggle sidebar-toggle">
    <span class="toggle-line toggle-line-first"></span>
    <span class="toggle-line toggle-line-middle"></span>
    <span class="toggle-line toggle-line-last"></span>
  </div>

  <aside class="sidebar">
    <div class="sidebar-inner">

      <ul class="sidebar-nav motion-element">
        <li class="sidebar-nav-toc">
          文章目录
        </li>
        <li class="sidebar-nav-overview">
          站点概览
        </li>
      </ul>

      <!--noindex-->
      <div class="post-toc-wrap sidebar-panel">
          <div class="post-toc motion-element"><ol class="nav"><li class="nav-item nav-level-1"><a class="nav-link" href="#框架及blog整理"><span class="nav-number">1.</span> <span class="nav-text">框架及blog整理</span></a><ol class="nav-child"><li class="nav-item nav-level-2"><a class="nav-link" href="#项目"><span class="nav-number">1.1.</span> <span class="nav-text">项目</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#控件及框架"><span class="nav-number">1.2.</span> <span class="nav-text">控件及框架</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#blog"><span class="nav-number">1.3.</span> <span class="nav-text">blog</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#设计"><span class="nav-number">1.4.</span> <span class="nav-text">设计</span></a></li></ol></li></ol></div>
      </div>
      <!--/noindex-->

      <div class="site-overview-wrap sidebar-panel">
        <div class="site-author motion-element" itemprop="author" itemscope itemtype="http://schema.org/Person">
    <img class="site-author-image" itemprop="image" alt="SuperYang"
      src="https://tva2.sinaimg.cn/crop.259.17.290.290.180/c2abdfa9jw8ez7appr3p2j20g40a2t91.jpg?KID=imgbed,tva&Expires=1594186820&ssig=BdxhDdi1Ti">
  <p class="site-author-name" itemprop="name">SuperYang</p>
  <div class="site-description" itemprop="description">牛肉炒饭不要香菜，老板收钱</div>
</div>
<div class="site-state-wrap motion-element">
  <nav class="site-state">
      <div class="site-state-item site-state-posts">
          <a href="/archives/">
        
          <span class="site-state-item-count">39</span>
          <span class="site-state-item-name">日志</span>
        </a>
      </div>
      <div class="site-state-item site-state-categories">
            <a href="/categories/">
          
        <span class="site-state-item-count">5</span>
        <span class="site-state-item-name">分类</span></a>
      </div>
      <div class="site-state-item site-state-tags">
            <a href="/tags/">
          
        <span class="site-state-item-count">31</span>
        <span class="site-state-item-name">标签</span></a>
      </div>
  </nav>
</div>
  <div class="links-of-author motion-element">
      <span class="links-of-author-item">
        <a href="https://github.com/yangchao0033" title="GitHub → https:&#x2F;&#x2F;github.com&#x2F;yangchao0033" rel="noopener" target="_blank"><i class="fab fa-github fa-fw"></i>GitHub</a>
      </span>
      <span class="links-of-author-item">
        <a href="mailto:ygrfwyc@gmail.com" title="E-Mail → mailto:ygrfwyc@gmail.com" rel="noopener" target="_blank"><i class="fa fa-envelope fa-fw"></i>E-Mail</a>
      </span>
      <span class="links-of-author-item">
        <a href="https://weibo.com/yangchao0033" title="Weibo → https:&#x2F;&#x2F;weibo.com&#x2F;yangchao0033" rel="noopener" target="_blank"><i class="fab fa-weibo fa-fw"></i>Weibo</a>
      </span>
      <span class="links-of-author-item">
        <a href="https://www.jianshu.com/u/f37a8f0ba6f8" title="简书 → https:&#x2F;&#x2F;www.jianshu.com&#x2F;u&#x2F;f37a8f0ba6f8" rel="noopener" target="_blank"><i class="fas fa-book fa-fw"></i>简书</a>
      </span>
      <span class="links-of-author-item">
        <a href="https://t.me/superYang0033" title="Telegram → https:&#x2F;&#x2F;t.me&#x2F;superYang0033" rel="noopener" target="_blank"><i class="fab fa-telegram fa-fw"></i>Telegram</a>
      </span>
  </div>



      </div>

      
        <div id="music163player">
        <iframe frameborder="no" border="0" marginwidth="0" marginheight="0" width=350 height=86 src="//music.163.com/outchain/player?type=2&id=31473269&auto=0&height=66">
        </iframe>
        </div>
    </div>

    

  </aside>
  <div id="sidebar-dimmer"></div>


      </div>
    </main>

    <footer class="footer">
      <div class="footer-inner">
        

        

<div class="copyright">
  
  &copy; 
  <span itemprop="copyrightYear">2020</span>
  <span class="with-love">
    <i class="fa fa-heart"></i>
  </span>
  <span class="author" itemprop="copyrightHolder">SuperYang</span>
    <span class="post-meta-divider">|</span>
    <span class="post-meta-item-icon">
      <i class="fa fa-chart-area"></i>
    </span>
    <span title="站点总字数">157k</span>
    <span class="post-meta-divider">|</span>
    <span class="post-meta-item-icon">
      <i class="fa fa-coffee"></i>
    </span>
    <span title="站点阅读时长">2:23</span>
</div>
  <div class="powered-by">由 <a href="https://hexo.io/" class="theme-link" rel="noopener" target="_blank">Hexo</a> & <a href="https://theme-next.org/" class="theme-link" rel="noopener" target="_blank">NexT.Gemini</a> 强力驱动
  </div>

        








      </div>
    </footer>
  </div>

  
  <script src="/lib/anime.min.js"></script>
  <script src="/lib/velocity/velocity.min.js"></script>
  <script src="/lib/velocity/velocity.ui.min.js"></script>

<script src="/js/utils.js"></script>

<script src="/js/motion.js"></script>


<script src="/js/schemes/pisces.js"></script>


<script src="/js/next-boot.js"></script>




  
  <script>
    (function(){
      var canonicalURL, curProtocol;
      //Get the <link> tag
      var x=document.getElementsByTagName("link");
		//Find the last canonical URL
		if(x.length > 0){
			for (i=0;i<x.length;i++){
				if(x[i].rel.toLowerCase() == 'canonical' && x[i].href){
					canonicalURL=x[i].href;
				}
			}
		}
    //Get protocol
	    if (!canonicalURL){
	    	curProtocol = window.location.protocol.split(':')[0];
	    }
	    else{
	    	curProtocol = canonicalURL.split(':')[0];
	    }
      //Get current URL if the canonical URL does not exist
	    if (!canonicalURL) canonicalURL = window.location.href;
	    //Assign script content. Replace current URL with the canonical URL
      !function(){var e=/([http|https]:\/\/[a-zA-Z0-9\_\.]+\.baidu\.com)/gi,r=canonicalURL,t=document.referrer;if(!e.test(r)){var n=(String(curProtocol).toLowerCase() === 'https')?"https://sp0.baidu.com/9_Q4simg2RQJ8t7jm9iCKT-xh_/s.gif":"//api.share.baidu.com/s.gif";t?(n+="?r="+encodeURIComponent(document.referrer),r&&(n+="&l="+r)):r&&(n+="?l="+r);var i=new Image;i.src=n}}(window);})();
  </script>




  
<script src="/js/local-search.js"></script>













  

  

  

  <script async src="/js/cursor/fireworks.js"></script>



<script>
NexT.utils.loadComments(document.querySelector('#valine-comments'), () => {
  NexT.utils.getScript('//unpkg.com/valine/dist/Valine.min.js', () => {
    var GUEST = ['nick', 'mail', 'link'];
    var guest = 'nick,mail,link';
    guest = guest.split(',').filter(item => {
      return GUEST.includes(item);
    });
    new Valine({
      el         : '#valine-comments',
      verify     : true,
      notify     : true,
      appId      : 'zizRqalUJY55Xc5oBJKbhxpV-gzGzoHsz',
      appKey     : '64gPcVi8lIA8zVGpBSEk7uKu',
      placeholder: "留言板无需注册登录，快来评论吧。。",
      avatar     : 'mm',
      meta       : guest,
      pageSize   : '10' || 10,
      visitor    : true,
      lang       : '' || 'zh-cn',
      path       : location.pathname,
      recordIP   : false,
      serverURLs : ''
    });
  }, window.Valine);
});
</script>

</body>
</html>
